package com.meilingcloud.biobank.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.meilingcloud.biobank.domain.Container;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 容器 Mapper接口
 *
 * @author chenl
 * @date 2021-01-25
 */
public interface ContainerMapper extends BaseMapper<Container> {

    /**
     * 根据子节点id找到所有父节点
     */
    List<Container> getAllParentsByChild(@Param("containerId") Long containerId);

    /**
     * 根据父节点找到所有子节点
     */
    List<Container> getAllLeafByParent(@Param("containerId") Long containerId);

    /**
     * 获取各个容器内当前存储样本数量
     */
    List<Container> getCurrentSampleCount();

    /**
     * 根据父节点找到所有子节点
     */
    List<Container> getAllChildrenByParent(@Param("containerId") Long containerId);
}
